using System;
using System.Collections.Generic;
using System.Text;
using EYDIngenieria.ERP.ObjetosDeNegocio.Dominio;
using Castle.ActiveRecord;

namespace EYDIngenieria.ERP.ObjetosDeNegocio.Repositorio
{
   public class RepositorioCuentaCorriente
    {
        public void Agregar(CuentaCorriente c)
        {
           c.Create();
        }

        public CuentaCorriente[] Listar()
        {
           return ActiveRecordBase<CuentaCorriente>.FindAll();
        }

        public void Modificar(CuentaCorriente c)
        {
           c.UpdateAndFlush();
        }

        public void Eliminar(CuentaCorriente c)
        {
            c.DeleteAndFlush();
        }

       public CuentaCorriente Obtener(int id)
       {
           return ActiveRecordBase<CuentaCorriente>.Find(id);
       }

       public CuentaCorriente[] Buscar(string codigo)
       {
           return CuentaCorriente.FindAllByProperty("Codigo", "Codigo", codigo);
       }

       public CuentaCorriente[] Buscar(Banco banco)
       {
           return CuentaCorriente.FindAllByProperty("Banco", "Banco", banco);
       }

    }
}
